﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NMF.Languages
{
    public interface IType
    {
        string Name { get; }

        void Visit(ITypeVisitor visitor);
        T Visit<T>(ITypeVisitor<T> visitor);
        T Visit<S, T>(ITypeVisitor<S, T> visitor, S parameter);
    }
}
